﻿import * as signalR from "@microsoft/signalr";
var chart = (function() {
    var connection;

    function getInstance() {
        if (connection === undefined || connection === null) {
            Construct();
        }
        return connection;
    }
    //signalR.LogLevel.Error – 错误消息。 日志Error仅消息。
    //signalR.LogLevel.Warning – 有关潜在错误的警告消息。 日志Warning，和Error消息。
    //signalR.LogLevel.Information – 不包含错误的状态消息。 日志Information， Warning，和Error消息。
    //signalR.LogLevel.Trace – 跟踪消息。 记录所有内容，包括数据中心和客户端之间传输
    function Construct() {
        connection = new signalR.HubConnectionBuilder()
            .withUrl("http://localhost:5000/instantMessage")
            .configureLogging(signalR.LogLevel.Trace)
            .withAutomaticReconnect()
            .build();
        connection.start().catch(err => console.error(err.toString()));

        //断开连接，设置重新连接
        connection.onclose(function() {
            console.log("连接已经关闭")
        });
    }
    return {
        getInstance: getInstance
    }
})();
export default {
    chart
}